go/types.genericType.Underlying (method)
25 uses
go/types (current package)
alias.go#L75: func (a *Alias) Underlying() Type { return unalias(a).Underlying() }
api_predicates.go#L22: if !isValid(T.Underlying()) {
api_predicates.go#L60: if !isValid(V.Underlying()) {
named.go#L712: return typ.Underlying()
type.go#L14: Underlying() Type
typestring.go#L217: if t == universeAnyAlias.Type().Underlying() {
under.go#L18: return t.Underlying()
universe.go#L114: _ = NewAlias(universeAnyAlias, universeAnyNoAlias.Type().Underlying()) // Link TypeName and Alias
golang.org/x/exp/apidiff
apidiff.go#L97: oIface, ok := otn1.Type().Underlying().(*types.Interface)
apidiff.go#L101: nIface, ok := nt1.Underlying().(*types.Interface)
compatibility.go#L202: t := f.Type().Underlying()
compatibility.go#L204: t = p.Elem().Underlying()
compatibility.go#L263: d.checkCompatible(otn, old.Underlying(), new.Underlying())
compatibility.go#L266: if reflect.TypeOf(old.Underlying()) != reflect.TypeOf(new.Underlying()) {
golang.org/x/tools/go/types/objectpath
objectpath.go#L295: if r := find(obj, T.Underlying(), append(path, opUnderlying), nil); r != nil {
golang.org/x/tools/internal/gcimporter
iexport.go#L1042: switch b := typ.Underlying().(*types.Basic); b.Info() & types.IsConstType {
iexport.go#L1068: panic(internalErrorf("unexpected type %v (%v)", typ, typ.Underlying()))
iexport.go#L1129: basic, ok := typ.Underlying().(*types.Basic)
iexport.go#L1131: panic(internalErrorf("unexpected type %v (%T)", typ.Underlying(), typ.Underlying()))
iimport.go#L356: if iface, _ := typ.Underlying().(*types.Interface); iface != nil {
iimport.go#L600: underlying := r.p.typAt(r.uint64(), named).Underlying()
iimport.go#L681: switch b := typ.Underlying().(*types.Basic); b.Info() & types.IsConstType {
ureader_yes.go#L587: if underlying := rhs.Underlying(); underlying != nil {
ureader_yes.go#L599: setUnderlying(rhs.Underlying())